Elimination of Nondeterminacy for Testing and Debugging Parallel Programs
نویسنده
چکیده
Nondeterminacy implies two unpleasant properties for testing and debugging parallel programs: successive executions of the same program with the same input values often do not show identical behaviour and watching the program influences the execution. It is therefore not always possible to test and debug parallel programs like sequential ones. This article presents an approach how to make test, regression test and cyclic debugging as easy as in the sequential case. To meet this goal we provide the user with the ability to specify not only input data for tests, but also the sequence of interprocess communications. This also guarantees reproducibility for debugging and regression testing.
منابع مشابه
An Efficient Debugging Method for Message-based Parallel Programs using Static Analysis Information
Guaranteeiq reproducibility and minimizing probe effects are major issues in the parallel program debugging. This paper suggests a new debugging method, named Detect and Reproduce method, for messagebased parallel programs. The proposed method is designed to guarantee the reproducible behaviors of a target program and to alleviate probe effects by reducing both the number of the probes to be in...
متن کاملAnalysis of Event Synchronization in Parallel Programs
The increase in the number and complexity of parallel programs has led to a need for better approaches for synchronization error detection and debugging of parallel programs. This paper presents an efficient and precise algorithm for the detection of nondeterminacy (race conditions) in parallel programs. Nondeterminacy exists in a program when the program yields different outputs for different ...
متن کاملA Taxonomy of Distributed Debuggers Based on Execution Replay
This paper presents a taxonomy of parallel and distributed debug-gers based on execution replay. Programming of distributed and parallel systems is a complex task. Amongst the many factors contributing to this complexity, the nondeterminacy of these systems is an important one. Execution replay is a technique developed to facilitate the debugging of nondeterministic programs. Execution replay h...
متن کاملUsing DDBG to Support Testing and High-level Debugging Interfaces
This paper describes our experience with the design and implementation of a distributed debugger for C/PVM programs within the scope of the SEPP and HPCTI Copernicus projects. These projects aimed at the development of an integrated parallel software engineering environment based on a high-level graphical parallel programming model (GRAPNEL) and a set of associated tools supporting graphical ed...
متن کاملTool Integration Issues for Parallel and Distributed Debugging
This paper describes our experience with the design and implementation of a distributed debugger for C/PVM programs within the scope of the SEPP and HPCTI Copernicus projects. These projects aimed at the development of an integrated parallel software engineering environment based on a high-level graphical parallel programming model (GRAPNEL) and a set of associated tools supporting graphical ed...
متن کامل